Data rate matching method in 3GPP2 system

ABSTRACT

A flexible data rate matching method in a 3GPP2 system is disclosed that supports flexible data rate repetition on a physical layer of synchronous cdma2000 in an interleaving process. The process includes repeating bits of a channel encoded bitstream with one of a plurality of repetition factors, for matching a length of a repeated bitstream to an interleaving depth, or alternatively, fixing an index of an offset bit, where bit repetition of the channel encoded bitstream is started therefrom, for making the repetition pattern of the channel encoded bitstream to be a desired bit repetition pattern, fixing a repetition factor according to an initial parameter defined by the index of a fixed offset bit, repeating a bit of relevant index, and updating the initial parameter according to the fixed repetition factor, and repeating a process of fixing the repetition factor of a next bit according to the updated initial parameter, repeating the next bit, and re-updating the updated initial parameter, for matching a length of the repeated bitstream to the interleaving depth.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a communication system, and moreparticularly, to a data rate matching method in a 3GPP2 system.

[0003] 2. Background of the Related Art

[0004] In general, the 3GPP2 (the 3rd Generation Partnership Project 2)system has two transmission modes in addition to a regular data ratemode. These modes are a flexible data rate mode and a variable data ratemode.

[0005] The regular data rate mode is a transmission mode operative on afixed chain called a Radio Configuration (RC). The RC represents a kindof transmission chain in which lengths of information data, channelinterleaver, and an output bitstreams from a channel encoder accordingto a code rate of channel codes, are made the same to form a standard.In this instance, there is a certain standard rule among the length ofthe channel interleaver, the coding rate of the channel encoder, and thelength of a channel Walsh code.

[0006] That is, once a chip rate to be used is fixed, a number of chipsrequired for one modulated symbol is fixed according to the length ofthe channel interleaver, which may be defined as a spreading factor,according to which the length of the Walsh code, that can subjectdifferent channels to code multiplexing, is fixed. The number ofavailable Walsh codes is proportional to the length of the Walsh code.Therefore, the number of channels that a multiplexing channel canaccommodate varies with the Walsh code.

[0007] For example, suppose lengths of input information bit sequencehave the same lengths after being subjected to a channel coding process.In this instance, the capability of error correction code for correctingpossible errors in the channel becomes stronger as the coding rate ofthe channel encoder becomes lower. That is, the lower the coding rate ofthe channel encoder, the higher the error correction capability. Thispermits a lower transmission power to be used.

[0008] However, using a low channel coding rate lengthens the outputbitstream of the channel encoder, which, in turn, elongates the lengthof the channel interleaver. As a result, a modulation symbol rate isincreased, thus reducing a number of chips required for one modulationsymbol at a fixed chip rate, and reducing the number of Walsh codes.

[0009] Alternatively, if a high channel coding rate is applied to inputbit sequences of the channel encoder of identical lengths, lengths ofoutput bit sequences of the channel encoder become short, even thoughthe error correction capability is low. This decreases the modulationsymbol rate, thus permitting the use of a short channel interleaver, toincrease a number of available Walsh codes.

[0010] From the above description, it is understood that there is acertain trade off between the coding rate of the channel encoder and theWalsh code spacing.

[0011] The RC is a standardized transmission chain useful when securingthe Walsh code spacing is desirable, or when a lower transmission poweris required, taking such a trade off relation into account. In the 3GPP2system, there are currently several standard RCs for 1X system of 1.2288Mcps chip rates, and several standard RCs for 3X system of 3.686 Mcpschip rates. It should be noted that, since the spreading factor has avalue in a form raised to the second power, both the input data rate andthe length of the interleaver defined in each of the RCs also have formsraised by a factor of two.

[0012] Before a channel is formed between a mobile station and a basestation, the mobile station and the base station determine the RC to beused and the spreading factor on the RC, i.e., the length of the channelinterleaver, through negotiation for processing a communication matchedto the chain. Modes in which the transmission chain differs from thetransmission chain defined in the RC are (i) the flexible data rate modeand (ii) the variable data rate mode.

[0013] In the flexible data rate, any data transmission rate other thanthe standard data transmission rate supported on the RC can besupported. For example, in cdma2000, transmission channels with varioussymbol rates are adjusted into transmission channels with optimal symbolrates by applying symbol repetition or puncturing thereto. In theadjustment of the symbol rate, a flexible data rate method is generallyused, which is a method for supporting any transmission rate other thana standard transmission rate supported in RCs of the cdma2000.

[0014] The flexible data rate was introduced to support an AdaptiveMulti-Rate (AMR) CODEC, one of speech CODEC in the 3GPP2 on a physicallayer. Data bits not consistent to the standard RC transmission rates inpresent cdma2000 support in a 20 ms frame length may be provided in acase of the AMR. In this instance, as one example, the length of thedata bits inconsistent with the standard transmission rate may bematched with a length of data at a transmission rate supported in the RCby using a zero padding on a physical layer. Alternatively, the lengthof the data bits inconsistent with the standard transmission rate may bematched with a length of data at a transmission rate supported in the RCby means of symbol repetition and puncturing between a channel encoderand a block interleaver for optimizing the data rate (flexible datamatching).

[0015] On the other hand, the variable data rate mode has been providedunder the following purpose. In the 3GPP2 system, the base station makestransmission scheduling to a forward supplemental channel, when the basestation assigns a fixed data transmission rate to the mobile station fora time period by means of a message. However, a channel situationbetween the base station and the mobile station during the particulartime period may be changed, and a system load on the base station may bechanged. For example, as the mobile station goes farther from the basestation, the channel quality becomes poorer, until the base stationlacks enough transmission power to transmit data to a particular mobilestation at the current data transmission rate.

[0016] To solve this problem, the base station may stop transmission ofdata to supplementary channels for the time period. However, such asolution causes delays in data transmission, as well as needless wasteof available transmission power and Walsh codes.

[0017] As an alternative, the base station may re-schedule the datatransmission rate after a time period is passed. However, thisalternative also causes the problem of time delay and waste of the Walshcodes.

[0018] The occurrence of this situation is not limited to the forwardlink. Thus, the channel situation between the mobile station and thebase station may also vary with movements of the mobile station in thereverse link. This can cause a lack of transmission power required tosustain an appropriate quality. Consequently, the variable data ratemode is used to solve such a situation.

[0019] In the variable data rate mode, the transmission rate is variedwith frames depending on situation. That is, if the channel environmentis determined to be poor, the base station drops the transmission rateof the supplementary channel. When the channel environment is determinedto be restored, the base station restores the transmission rate of thesupplementary channel. Provided that such a variable data rate mode isapplied, the base station can use available power without frequentre-scheduling.

[0020] A related art flexible data rate matching method will beexplained with reference to FIG. 1.

[0021] A bitstream with a length ‘I’ is provided to a channel encoder,and encoded into a bitstream with a length L (=nI) (step 10). In thisinstance, a number ‘M’ of repetition is fixed according to the followingequation, where ‘N’ denotes an interleaving depth of a block interleaverused in the present RC. The channel-encoded bitstream is symbol repeatedin ‘M’ times (step 11). $\begin{matrix}{{M = \lceil \frac{N}{L} \rceil},} & (1)\end{matrix}$

[0022] Here, ┌x┐ denotes the smallest integer equal to, or greater than‘x’. The length of the output bitstream after the bitstream passesthrough a symbol repeater is L*M. If the length of the output bitstreamof the symbol repeater has a value greater than a depth ‘N’ of the blockinterleaver, the length of the output bitstream is punctured formatching with a desired depth of the interleaver (step 12). Accordingly,an amount ‘P’ of puncturing required for one frame can be expressed asthe following equation (2).

P=LM−N  (2)

[0023] For carrying out such a puncturing, at first, a puncturingdistance ‘D’ is defined as follows. $\begin{matrix}{D = \lfloor \frac{LM}{P} \rfloor} & (3)\end{matrix}$

[0024] Here, └x┘ denotes the greatest integer not greater than ‘x’. Thatis, ‘P’ bits of L*M bits of a bitstream passed through the symbolrepeater are punctured at ‘D’ intervals at indices ‘D’, ‘2D’, ‘3D’, . .. when the (L*M) bits of the bitstream are indexed from ‘1’ to (L*M).Consequently, the size (length) of the punctured bitstream is the samewith the size (depth) ‘N’ of the interleaver (step 13). Thus, thematching of the flexible data rate is done over two steps of symbolrepetition and puncturing in the related art.

[0025] Thus, as described before, the length of the channel interleaverused in each RC is fixed according to the spreading factor. Since thespreading factor has a value in a form raised by a power of 2, a ratioof the length of the interleaver fixed according to one spreading factorto the length of the interleaver fixed according to another spreadingfactor one step lower than the one spreading factor is exactly 1:2.

[0026] If the greater spreading factor is represented with ‘A’ and thesmaller spreading factor is represented with ‘B’, a 1: 1 mapping can beestablished between the spreading factor and the input informationbitstream of the channel encoder in each RC. If lengths of the inputinformation bit sequence of the channel encoder are represented withI_(A) for the spreading factor ‘A’ and I_(B) for the spreading factor‘B’ respectively, a relation of I_(B)=2*I_(A) is established. If thelengths of the channel interleavers to be used are represented with NAand NB respectively, a relation of N_(B)=2*N_(A) is established.

[0027] If it is assumed that a coding rate of the channel encoder (usingturbo codes or convolution codes) in the present RC is 1/n asillustrated in FIG. 1, taking the flexible or variable data rate modeinto account, in which an ‘I’ (a length of an information bitstreamhaving CRC bits, tail bits, and reserved bits added thereto in steps 10and 11) is a length of the input bitstream of the channel encoder, thatmeets a non-regular data length of “I_(A)<I<I_(B)”, the input ‘I’ willprovides an output “n*I”, when “N_(A)<n*I<N_(B)” is also met (step 12).

[0028] Consequently, a certain operation for matching the length of theoutput bitstream of the channel encoder “n*I” to the length of theinterleaver is required. A method currently used in 3GPP employs is thatthe length L (=n*I) of the output bitstream of the channel encoder ismatched to the interleaver of N=N_(B) to require a bit repetition of“N_(B)−n*I” (step 13), according to the following uniform repetitionprocess. That is, a (k)th output symbol of a repetitive block can bepredicted starting from a code symbol of$( \lfloor \frac{kL}{N} \rfloor )$

[0029] th input bitstream for an index k increased from ‘0’ up to ‘N-1’.

[0030] Next, a method for supporting the variable data rate mode will bedescribed. In the variable data rate mode, a highest data ratesupportable in the initial negotiation process, a data rate one steplower than the highest data rate, and data rate two steps lower than thehighest data rate are defined as a transmission data rate set.Accordingly, in the variable data rate mode for the presentsupplementary channel, the data transmission rate can be adjustedbetween the supportable highest transmission rate and the two step lowertransmission rate.

[0031] In the forward channel, the mobile station can only determine arate variation by blind rate detection. Therefore, if a range of a datatransmission rate variation is taken too large, an operative complexityof the mobile station is increased. The lengths of the channelinterleaver and the Walsh codes, used in the highest transmission rate,should not be changed. That is, the interleaver and the Walsh codes usedin the highest transmission rate presently should not be changed. If thedata transmission rate is dropped to half of the highest transmissionrate, two times of symbol repetition is required for matching the lengthof the interleaver to be used on the channel and the length of theoutput bitstream of the channel encoder.

[0032] Similarly, if the data transmission rate is dropped to a quarterof the highest transmission rate, four times of symbol repetition isrequired for matching the length of the interleaver to be used on thechannel and the length of the output bitstream of the channel encoder.The foregoing example is applicable to a case of forward supplementarychannel of a non-flexible data rate.

[0033] The variable data rate mode for the flexible data rate can besupported in the supplementary channel. However, in this case, thedefinitions of the flexible data rate and the variable data rate modethemselves become vague. That is, even if the highest data rate in thevariable data rate mode is a regular rate in the present RC and the onestep lower data rate is also a data rate fixed in the present RC, theone step lower data rate can already be taken as a flexible data ratethat uses no transmission chain fixed in the present RC. This is becausethe length of interleaver in the variable data rate mode, i.e., thespreading factor, is in a state fixed as the spreading factor at thehighest transmission rate.

[0034] As one example, consider a RC4 of the present forward channel,when the turbo codes or convolution codes of {fraction (1/2)} rate isused. It is assumed that the highest transmission rate useable in thevariable data rate mode is 76.8 kbps, when the length of the interleaverused in the forward RC4 is fixed at 3072. A variable data rate method inthis mode will be discussed.

[0035] It is assumed that an appropriate value from a set of usable datatransmission rates {19.2 kbps, 38.4 kbps, and 76.8 kbps} is used. Thoughdata transmission rates of 19.2 kbps, and 38.4 kbps are the transmissionrates defined in the RC4, there is no chain that connects thetransmission rates to the 3072, the present interleaver length, in theRC. Therefore, those transmission rates may be taken as the variabledata rates.

[0036] If the chain has an interleaver length fixed at ‘N’ even in thevariable data rate mode and the present data transmission rate notdefined in the present RC, the length of output bitstream of the channelencoder and the fixed interleaver length can be matched by means of theaforementioned uniform repetitive algorithm.

[0037] Once a transmission chain for supporting the flexible data rateor the variable data rate is included to an existing regular chain, abasic function block diagram as illustrated in FIG. 1 can be formed. ARC 5 on a forward link will be described as an example with reference toFIG. 1.

[0038] A reserved bit of ‘0’ or ‘1’ is added to channel bits (S10), andCRC bits are added to channel input bits having a length for detectionof an error (S11). After the CRC bits are added to the channel inputbits, tail bits or the reserved bits are added to the bit sequence(S12). When a convolution code is used, 8 tail bits are added, and whena turbo code is used, 6 tail bits and 2 reserved bits are added. The CRCand reserved bits, and the tail bits are added to form one informationbit sequence, which is then channel coded into turbo codes orconvolution codes (S13), subjected to symbol repetition (S14) and symbolpuncturing (S 15) to match with a desired interleaver length, and blockinterleaved at the block interleaver (S16).

[0039] As shown in FIG. 1, a symbol repetition is performed on anexisting chain after channel coded in turbo codes or convolution codes,and then the symbol puncturing is performed. Therefore, both the symbolrepetition and the symbol puncturing are operative on an existingregular data rate chain. However, as explained before, since an actualrate adaptation is made through a uniform repetition process in a symbolrepetition block in the flexible and variable data rate operations, thesymbol puncturing block is inoperative.

[0040] The method of symbol repetition in the related art has variousproblems. For example, it requires buffering for the length of outputbitstream of the symbol repeater. Moreover, because, in the puncturing,the original bitstream is subjected to an ‘M’ times of symbol repetitionto form an input bitstream greater than an interleaver block depth ‘N’and the puncturing is made on the input bitstream, a method of symbolrepetition changed from the related art is required for avoidingexcessive repetition of an unnecessary bitstream to form an appropriateinput bitstream for the puncturing block depth.

[0041] Additionally, Table 1 shows problems of a variable data rateoperation mode in the forward link RC 5, and in the backward link RC4.In the table 1, it is assumed that a virtual set of the variable datarate has {115.2 kbps, 80 kbps, 57.6 kbps}. Then, a size of a desiredchannel interleaver for a maximum allocated data rate is 6144. A chainfor 115.2 kbps, the maximum allocated data rate, may be assumed to be anexisting regular data rate chain, and, according to this, as can beknown from FIG. 1, 4 symbols out of 12 code symbols are punctured forrate adaptation. TABLE 1 Length of Information Length of a coder desireddata rate output sequence Rate matching interleaver 115.2kbps 2304*4 =9215 4 bit puncturing among 12 6144 bits (regular chain puncturing)80kbps 1600*4 = 6400 Inoperative 6144 57.6kbps 1152*4 = 4608 1536 symbolrepetition 6144

[0042] The symbol puncturing pattern for puncturing 4 symbols out of 12symbols is defined in 3GPP2 for turbo codes and convolution codes as asort of fixed pattern. Next, a chain for 57.6 kbps may be assumed to bea sort of flexible chain, when a 1536 bit uniform symbol repetitivealgorithm is required for matching a length of a 4608 bit outputsequence of the channel coder to a size of a 6144 bit interleaver. Then,operation of the puncturing block in FIG. 1 is stopped. However, theproblem in the table 1 is a length of 6400 bits of the output sequenceform the channel coder in 80 kbps is already greater than a desiredlength 6144 of the channel interleaver. Therefore, it is impossible tocomplete an existing regular chain by using an existing symbolrepetition block.

[0043] The above references are incorporated by reference herein whereappropriate for appropriate teachings of additional or alternativedetails, features and/or technical background.

SUMMARY OF THE INVENTION

[0044] An object of the invention is to solve at least the aboveproblems and/or disadvantages and to provide at least the advantagesdescribed hereinafter.

[0045] Another object of the present invention is to provide a flexibledata rate matching method in a 3GPP2 system that substantially obviatesone or more of the problems due to limitations and disadvantages of therelated art.

[0046] Another object of the present invention is to provide a flexibledata rate matching method in a 3GPP2 system, which can carry out symbolrepetition and puncturing in one step.

[0047] Another object of the present invention is to provide a flexibledata rate matching method in a 3GPP2 system, in which symbol repetitionand puncturing can be made by one uniform symbol repetition.

[0048] Another object of the present invention is to provide a data ratematching method in a 3GPP2 communication system that supports a flexibledata rate and a variable data rate on an existing transmission chain.

[0049] To achieve at least these advantages in whole or in parts, thereis provided a flexible data rate matching method in a 3GPP2 for mappingan input bitstream of one data rate on a physical layer, including thesteps of (1) subjecting the input bitstream to channel encoding, and (2)repeating bits of the channel encoded bitstream with one of a pluralityof repetition factors, for matching a length of a repeated bitstream toan interleaving depth.

[0050] The repetition factor is either one of a greatest integer M₁ notgreater than a value obtainable by dividing the interleaving depth bythe length of the channel encoded bitstream and an M₂ greater than theM₁ by one.

[0051] To further achieve at least the above objects in whole or inparts, there is provided a flexible data rate matching method in a 3GPP2system for mapping an input bitstream of one data rate on a physicallayer, including the steps of (1) subjecting the input bitstream tochannel encoding, (2) fixing an index of an offset bit repetition of thechannel encoded bitstream is started therefrom, for making therepetition pattern of the channel encoded bitstream to be a desired bitrepetition pattern, (3) fixing a repetition factor according to aninitial parameter defined by the index of a fixed offset bit, repeatinga bit of relevant index, and updating the initial parameter according tothe fixed repetition factor, and (4) repeating a process of fixing therepetition factor of a next bit according to the updated initialparameter, repeating the next bit, and re-updating the updated initialparameter, for matching a length of the repeated bitstream to theinterleaving depth.

[0052] To further achieve the above objects in whole or in parts, thereis provided a flexible data rate matching method in a 3GPP2 system formapping an input bitstream of one data rate on a physical layer,comprising (1) performing to channel encoding on an input bitstream; and(2) repeating bits of the channel encoded bitstream in accordance withfirst and second repetition factors, the first repetition factor beingdifferent than the second repetition factor.

[0053] To further achieve the above objects in whole or in parts, thereis provided a flexible data rate matching method in a 3GPP2communication system in an interleaving process for mapping an inputbitstream of one data rate on a physical layer, comprising (1)performing channel encoding on an input bitstream; (2) setting an indexof an offset bit from which bit repetition of the channel encodedbitstream is started to make a repetition pattern of the channel encodedbitstream to be a desired bit repetition pattern; (3) setting arepetition factor according to an initial parameter defined by the indexof a fixed offset bit, repeating a bit of relevant index, and updatingan initial parameter according to the fixed repetition factor; and (4)repeating a process of fixing the repetition factor of a next bitaccording to the updated initial parameter, repeating the next bit, andre-updating the updated initial parameter, to match a length of therepeated bitstream to the interleaving depth.

[0054] To further achieve the above objects in whole or in parts, thereis provided a flexible data rate matching method in a 3GPP2 system formapping an input bitstream of one data rate on a physical layer,comprising subjecting the input bitstream to channel encoding; (2)fixing an index of an offset bit from which bit repetition of thechannel encoded bitstream is started, to make a repetition pattern ofthe channel encoded bitstream to be a desired bit repetition pattern;(3) comparing a remainder of an index increased by a prescribed numberof bits from the index of the fixed offset bit divided by a length ofthe channel encoded bitstream to the number of bits, for fixing arepetition factor; and (4) repeating bits according to the fixedrepetition factor, to match a length of the repeated bitstream to aninterleaving depth.

[0055] To further achieve the above objects in whole or in parts, thereis provided a method of matching a data rate in a communication system,comprising receiving a coded bitstream from an encoder, the codedbitstream having one of a variable rate and a flexible rate; determiningfirst and second repetition factors, the second repetition factor beinga sum of the first repetition factor plus ‘1’; and repeating a firstnumber of bits of the coded bitstream by the first repetition factor andrepeating a second number of bits of the bitstream by the secondrepetition factor to mach the data rate to an interleaver, the sum ofthe first and second number of bits being a total length of the codedbitstream.

[0056] To further achieve the above objects in whole or in parts, thereis provided a method of matching a data rate in a communication system,comprising receiving a coded bitstream from an encoder, the codedbitstream having one of a variable rate and a flexible rate; determiningfirst and second puncturing factors, the second puncturing factor beinga sum of the first puncturing factor plus ‘1’; and puncturing a firstnumber of bits of the coded bitstream by the first puncturing factor andpuncturing a second number of bits of the bitstream by the secondpuncturing factor to mach the data rate to an interleaver, the sum ofthe first and second number of bits being a total length of the codedbitstream.

[0057] To further achieve the above objects in whole or in parts, thereis provided a communication device, comprising means for receiving acoded bitstream from an encoder, the coded bitstream having one of avariable rate and a flexible rate; means for determining first andsecond repetition factors, the second repetition factor being a sum ofthe first repetition factor plus ‘1’; and means for repeating a firstnumber of bits of the coded bitstream by the first repetition factor andrepeating a second number of bits of the bitstream by the secondrepetition factor to match the data rate to an interleaver, the sum ofthe first and second number of bits being a total length of the codedbitstream.

[0058] Additional advantages, objects, and features of the inventionwill be set forth in part in the description which follows and in partwill become apparent to those having ordinary skill in the art uponexamination of the following or may be learned from practice of theinvention. The objects and advantages of the invention may be realizedand attained as particularly pointed out in the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0059] The invention will be described in detail with reference to thefollowing drawings in which like reference numerals refer to likeelements wherein:

[0060]FIG. 1 illustrates a related art flexible data rate matchingmethod;

[0061]FIG. 2 illustrates a flexible data rate matching method inaccordance with a preferred embodiment of the present invention; and

[0062]FIGS. 3A and 3B illustrate one example of the flexible data ratematching method in accordance with a preferred embodiment of the presentinvention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0063] Reference will now be made in detail to the preferred embodimentsof the present invention, examples of which are illustrated in theaccompanying drawings. FIG. 2 illustrates a flexible data rate matchingmethod in accordance with a preferred embodiment of the presentinvention.

[0064] Referring to FIG. 2, an input bitstream with a length ‘I’ ischannel encoded into an output bitstream with a length L (=nI) (step20). (N−L) bits of the channel encoded output bitstream are repeated sothat a length of a new bitstream inclusive of the repeated bits ismatched with an interleaving depth. In the meantime, for optimizingdecoding at a reception terminal, intervals of the bits repeated with arepetition factor in the channel encoded output bitstream are requiredto be uniform over ‘L’ thereof (step 21).

[0065] The repetition factor is selected from a plurality of repetitionfactors, the calculation of which will be explained later. It should betaken into consideration that (N−L) may be greater than ‘L’, and thedepth ‘N’ of the interleaver may be greater than two times of the lengthof the channel encoded bitstream. As the (N−L) bits are repeated on theentire bitstream of the channel encoder uniformly with the repetitionfactor, the rate matching process can be carried out without thepuncturing in the related art (step 22). That is, the present inventionsuggests making one step of a uniform symbol repetition instead of thetwo steps of symbol repetition and puncturing in the rate matching, forrealizing an optimal data rate matching. Therefore, the presentinvention defines two repetition factors M₁ and M₂ as the followingequations (4) and (5). $\begin{matrix}{M_{1} = \lfloor \frac{N}{L} \rfloor} & (4)\end{matrix}$

 M ₂ =M ₁+1  (5)

[0066] The number of bits to be repeated for M₂ times in the bitstreamof ‘L’ bits is defined as K₁, which can be calculated by modularoperation of ‘N’ and ‘L’ as the following equation (6).

K ₁ =N mod L  (6)

[0067] Similar to K₁, the number of bits to be repeated for M₂ times inthe bitstream of ‘L’ bits is defined as K₂, which can be calculated asthe following equation (7).

K₂ =L−K  (7)

[0068] The length ‘N’ of the symbol repeated bitstream can be expressedas follows.

N=M ₂ K ₁ +M ₁ K ₂  (8)

[0069] For uniform interval bit repetition according to M₁ and M₂ overthe entire channel encoded bitstream, K₁ bits to be repeated for M₂times are selected uniformly from the channel encoded bitstream of ‘L’bits, for which the following first algorithm is provided. Indices (i)of the bits in the channel encoded bitstream are increased from ‘0’ to‘L−1’ in the following description.

[0070] First Algorithm

[0071] for (i=0; i<L; i++){

[0072] if (((i>K₁)+a)mod L<K₁); in order to fix the repetition factor ofthe bits, the bit index is increased from an offset bit index ‘a’ by aK₁ increment

[0073] repeat ith bit with repetition factor M₂

[0074] else repeat ith bit with repetition factor M₁

[0075] }

[0076] That is, in the first algorithm, when the bit index of thechannel encoded bitstream increases in increments of ‘1’ from ‘0’ to‘L−1’. Then, each of (mod L) values of the values increased by K₁increment from the offset bit index is compared to K₁, to repeat arelevant bit for the repetition factor of M₂ times if the (mod L) valueis smaller than K₁, and to repeat a relevant bit for the repetitionfactor of M₁ times if the (mod L) value is equal to, or greater than K₁.The “a” acts as a sort of offset for designating the index of the bit tobe repeated, initially. Therefore, “a” may be a constant equal to, orgreater than ‘0’, depending on which value an eventual repetitionpattern of the channel encoded bitstream has a pattern of a end-aroundshifted form.

[0077] For an example, it is assumed that the length ‘L’ of the channelencoded bitstream is ‘10’ and the depth ‘N’ of a desired interleaver is25. In this instance, for making a rate matching in the related art, atfirst ‘M’ is calculated to be three according to${``\lceil \frac{25}{10} \rceil"}.$

[0078] Then, the symbol repetition is made according to the repetitionfactor three, to obtain an output bitstream with a length L−M to be 30.To match the interleaver depth of 25, five of the bits are punctured.Accordingly, it may be taken that, in the existing RC, the bits notpunctured are bits of original channel encoded bitstream repeatedaccording to the repetition factor 3, and the punctured five bits arebits of original channel encoded bitstream repeated according to therepetition factor of two.

[0079] In the present invention, however, the rate matching is carriedout according to the following one step. That is, the numbers of symbolrepetition (or the repetition factors) M₁ and M₂ are calculated asfollows. That is, M₁ is calculated to be two according to${{``\lfloor \frac{25}{10} \rfloor"}( {= 2} )},$

and M₂ is calculated to be three according to “M₁+1” (=3). Next, thenumber K₁ of bits to be repeated for M₂ times in the ‘L’ (10) bits ofthe channel encoded bitstream is calculated to be five according to “25mod 10”. In conclusion, the question of symbol repetition lies onuniform selection of bits of the repetition factor two and the five bitsof the repetition factor 3 from the entire bitstream of 10 bits.

[0080] In a case the first algorithm of the present invention is used,positions of the repeated bits of the repetition factor M₁ and M₂ in thechannel encoded bitstream provide repetition patterns as illustrated inFIGS. 3A and 3B. FIG. 3A illustrates a repetition factor when theconstant a=0, and FIG. 3B illustrates a repetition factor when theconstant a=9 (=L−1).

[0081] Referring to FIGS. 3A and 3B, the hatched parts representpositions of bits of the channel encoded bitstream repeated in therepetition factor 3 (=M₂) as calculated in the foregoing example of thepresent invention, and the non-hatched parts represent positions of bitsrepeated in the repetition factor 2 (M₁) of the present invention. FromFIGS. 3A and 3B, it is noted that the algorithm of the present inventioncan make a desired symbol repetition by changing the constant ‘a’. Inthis instance, as the constant ‘a’ changes, the pattern of repetition ofthe bits in the channel encoded bits returns to an original pattern. Thesymbol repetition according to the algorithm of the present inventioncan provide an identical or desired repetition pattern according to thefollowing four embodiments. That is, in the four embodiments, aparameter ‘ACC’ is defined by using the constant ‘a’ of the firstalgorithm, the repetition factor of a bit of an index has a value M₁ orM₂ according to an updated value of the parameter ‘ACC’, and the symbolrepetition according to the different repetition factors is made for theentire channel encoded bitstream, uniformly. Variables defined in theequations (4)-(7) are used without change in the following fourembodiments.

[0082] First Embodiment

[0083] i=0

[0084] ACC={(L−K₁+a) mod L}+K₁; initialize the ACC parameter

[0085] do while (i<L){

[0086] if (ACC>L); compare ACC to the length ‘L’ of the channel encodedbitstream

[0087] Repeat ith bit with the repetition factor M₂

[0088] ACC=ACC−L+K₁; update ACC by using K₂(=L−K₁) decrement of the ACC

[0089] else

[0090] Repeat ith bit with the repetition factor M₁

[0091] ACC=ACC+K₁; update ACC by using K₁ increment of the ACC

[0092] }

[0093] In the first embodiment, the parameter ‘ACC’ is defined to be‘{(L−K₁+a) mod L}+K₁’, for carrying out the bit repetition according tothe repetition factor M₂ if ACC is equal to, or greater than the lengthof the channel encoded bitstream, and carrying out the bit repetitionaccording to the repetition factor M₁ if ACC is smaller than the lengthof the channel encoded bitstream. After the bit repetition is doneaccording to one of the two repetition factors, the parameter ‘ACC’ isupdated to a value decreased by K₂ for the repetition factor M₂ andincreased by K₁ for the repetition factor M₁, for being used as aparameter for fixing the repetition factor of the next bit. Thealgorithm is operative during the bit index ‘i’ is increased from ‘0’ to‘L−1’ for fixing the repetition factor of the bits in the channelencoded bitstream.

[0094] Second Embodiment

[0095] i=0

[0096] ACC=(L−K₁+a) mod L; initialize the ACC parameter

[0097] do while (i<L){

[0098] ACC=ACC+K₁; increase ACC by K₁; before carrying out a test forfixing the repetition factor of a bit with a relevant index

[0099] if (ACC>L); compare ACC to the length ‘L’ of the channel encodedbitstream

[0100] Repeat ith bit with the repetition factor M₂

[0101] ACC=ACC−L; decreasing ACC by the length ‘L’ of the channelencoded bitstream

[0102] else

[0103] Repeat ith bit with the repetition factor M₁

[0104] }

[0105] In the second embodiment, the parameter ‘ACC’ is defined to be‘{(L−K₁+a) mod L}’, for carrying out the bit repetition according to therepetition factor M₂ if ACC is equal to, or greater than the length ofthe channel encoded bitstream, and carrying out the bit repetitionaccording to the repetition factor M₁ if ACC is smaller than the lengthof the channel encoded bitstream. After the bit repetition is done, theparameter ‘ACC’ is updated to a value decreased by the length ‘L’ of thechannel encoded bitstream for the repetition factor M₂, for being usedas a parameter for fixing the repetition factor for the next bit. Thealgorithm is operative during the bit index ‘i’ is increased from ‘0’ to‘L−1’ for fixing the repetition factor of the bits in the channelencoded bitstream.

[0106] Third Embodiment

[0107] i=0

[0108] ACC=(L−(a mod L)+K₁−1) mod L; initialize the ACC parameter

[0109] do while (i<L){

[0110] if (ACC<K₁); compare ACC to the number K₁ of bits repeated for M₂times in the entire channel encoded bitstream

[0111] Repeat ith bit with the repetition factor M₂

[0112] ACC=ACC+K₂; update ACC by using K₂ (=L−K₁) increment of the ACC

[0113] else

[0114] Repeat ith bit with the repetition factor M₁

[0115] ACC=ACC−K₁; update ACC by using K₁ decrement of the ACC

[0116] }

[0117] In the third embodiment, the parameter ‘ACC’ is defined to be‘(L−(a mod L) K₁−1) mod L, for carrying out the bit repetition accordingto the repetition factor M₂ if ACC is smaller than K₁, and carrying outthe bit repetition according to the repetition factor M₁ if ACC is equalto, or greater than K₁. After the bit repetition is done according toone of the two repetition factors, the parameter ‘ACC’ is updated to avalue increased by K₂ for the repetition factor M₂ and decreased by K₁for the repetition factor M₁, for being used as a parameter for fixingthe repetition factor of the next bit. The algorithm is operative duringthe bit index ‘i’ is increased from ‘0’ to ‘L−1’ for fixing therepetition factor of the bits in the channel encoded bitstream.

[0118] Fourth Embodiment

[0119] IN_SYM=0; store index in an input buffer

[0120] ACC=b=(K₁+L−1−a) mod L; initialize ACC

[0121] while (IN_SYM<L)

[0122] while (ACC<N)

[0123] output symbol IN_SYM; forward the stored input bit index as anoutput bit index in a case IN_SYM is smaller than ‘L’ and ACC is smallerthan ‘N’

[0124] ACC=ACC+L; increase ACC by ‘L’

[0125] end while;

[0126] IN_SYM=IN_SYM+1; increase IN-SYM by unity

[0127] ACC=ACC−N; decrease ACC by N

[0128] end while;

[0129] In the fourth embodiment, when the bits of the bitstream providedto the symbol repetition block have indices from ‘0’ to ‘L−1’ and N bitsof a bitstream from the symbol repetition block have indices from ‘0’ to‘N−1’, a value of a (k)th bit (0<k<N) of the bitstream form the symbolrepetition block can be predicted from a value of a$( \lfloor \frac{( {k \times L} ) + b}{N} \rfloor )$

[0130] th bit of the bitstream provided to the symbol repetition block.That is, the kth output symbol will be the LkL/Njth input symbol. When bis set to ‘0’. Particularly, by adjusting the constant ‘b’ which can beincreased from ‘0’ to ‘L−1’, a repetition pattern exactly identical tothe repetition pattern of the first algorithm explained before can beprovided in the fourth embodiment. In this instance, the relationalexpression of the ‘a’ in the first algorithm and the ‘b’ can beconverted as follows.

b=(K ₁ +L−1−a)mod L

a=(K ₁ +L−1−b)mod L

[0131] By exchanging the initial offsets ‘a’ and ‘b’ in the fourthembodiment, repetition patterns exactly identical to each other areobtainable.

[0132] Another embodiment of the present invention is directed to asymbol repetition or symbol puncturing method which can support both aflexible data rate and a variable data rate on one chain when the symbolrepetition and the symbol puncturing are carried out on one transmissionchain. In this instance, the symbol repetition or the symbol puncturingis carried out on the transmission chain exclusively from each other.

[0133] Fifth Embodiment

[0134] The fifth embodiment is a symbol repetition algorithm forsupporting a flexible data rate and a variable data rate. According tothis embodiment, the symbol repetition is made when a length of achannel coded information bit sequence is shorter than a desired lengthof an interleaver. The symbol repetition pattern is defined as follows.

[0135] When a length of an output sequence of a channel coder is ‘L’,and a desired length of a channel interleaver is ‘N’, a symbolrepetition factor is defined as ‘N/L’. If a calculated symbol repetitionfactor is smaller than ‘1’, operation of a symbol repetition block isstopped. However, if the calculated symbol repetition factor is greaterthan ‘1’, the following algorithm is applied in carrying out a uniformsymbol repetition.

[0136] Uniform Symbol Repetition Algorithm

[0137] A (k)th output symbol of a symbol repetition block can beestimated from a ‘└kL/N┘’th symbol among input symbols (an outputsequence of the channel coder) of the symbol repetition block. Here, ‘k’denotes a value increasing from ‘0’ to ‘N−1’, ‘L’ denotes a number ofcoded symbols per a frame in an output sequence of a coder, and ‘N’denotes a desired length of the channel interleaver equal to, or greaterthan ‘L’. When ‘N’ is smaller than ‘L’, a block for carrying out auniform symbol repetition is not operative, but a block for carrying outpuncturing is operative.

[0138] Sixth Embodiment

[0139] The sixth embodiment is a symbol puncturing algorithm forsupporting a flexible data rate and a variable data rate. The symbolpuncturing is made according to the following puncturing algorithm whena length of an output sequence of a channel coder is longer than adesired length of a channel interleaver.

[0140] Uniform Symbol Puncturing Algorithm

[0141] A (k)th output symbol of a puncturing block can be estimated froma ‘└kL/N┘’th symbol among input symbols (an output sequence of thechannel coder) of the puncturing block. Here, ‘k’ denotes a valueincreasing from ‘0’ to ‘N−1’, ‘L’ denotes a number of coded symbols pera frame in an output sequence of a coder, and ‘N’ denotes a desiredlength of the channel interleaver smaller than ‘L’. When ‘N’ is equalto, or greater than ‘L’, a puncturing block for puncturing is notoperative. It is noted that operation of the puncturing block and thesymbol repetition block are exclusive to each other. That is, if thesymbol repetition block is operative, the symbol puncturing block isalways not operative, and vice-versa.

[0142] In the sixth embodiment, optimum puncturing of a turbo codedoutput sequence is required to be taken into account, and the puncturingblock is operative at an optimal condition with respect to a convolutioncode. However, with respect to the turbo code, since operation of thepuncturing block can not satisfy a condition for puncturing a turbocoded output sequence, there may be a slight loss.

[0143] Therefore, in the sixth embodiment, a separate puncturingalgorithm, particularly for the turbo code, may be defined. That is, analgorithm that excludes puncturing of turbo coded systematic bits may bedefined.

[0144] When a transmission chain is formed from the foregoing puncturingalgorithm, there is an additional advantage. Specifically, a maximuminformation data rate of the flexible data rate defined in a RC can beincreased. The RCs of which maximum information data rates are increasedthrough this are the backward link RC4, and RC6, and the forward linkRC5, and RC9, which may be summarized as shown in Table 2, below. TABLE2 Transmission chain of the Related art transmission chain presentinvention Number of bits Number of bits (information + Information(information + Information CRC + data rate CRC + data rate RC tail)(bps) tail) (bps) Backward  3072 153600  4607  230350 RC Backward 18432921600 20735 1036750 RC Forward  3072 153600  4607  230350 RC Forward18432 921600 20735 1036750 RC

[0145] That is, as shown in Table 2, when an information bit sequence ofa flexible data rate is subjected to symbol repetition, or symbolpuncturing, the present invention increases the maximum informationtransmission rate of the information bit sequence.

[0146] It should be understood that all of the above describedembodiments of rate matching could be applied to perform rate matchingusing puncturing instead of repetition. Thus, instead of calculating abit to be repeated by the appropriate number of times, the process wouldcalculate a bit to be punctured. The equations and algorithms wouldotherwise remain the same.

[0147] The flexible data rate matching method in a 3GPP2 system of thepresent invention has many advantages. For example, the two steps ofrate matching required in the related art inclusive of a certain timesof symbol repetition and puncturing can be reduced to one step ofuniform repetition.

[0148] Additionally, a uniform repetition pattern is obtainable by usinga process simpler than the flexible data rate matching in the relatedart.

[0149] Furthermore, the operation of the variable data rate and theflexible data rate can be made positively in all RCs of 3GPP2 standardby making a uniform puncturing algorithm in an existing chain. The useof the uniform puncturing algorithm increases a maximum information datarate for the flexible data rate in some of RCs.

[0150] The foregoing embodiments and advantages are merely exemplary andare not to be construed as limiting the present invention. The presentteaching can be readily applied to other types of apparatuses. Thedescription of the present invention is intended to be illustrative, andnot to limit the scope of the claims. Many alternatives, modifications,and variations will be apparent to those skilled in the art. In theclaims, means-plus-function clauses are intended to cover the structuresdescribed herein as performing the recited function and not onlystructural equivalents but also equivalent structures.

What is claimed is:
 1. A flexible data rate matching method in a 3GPP2communication system in a process for mapping an input bitstream of onedata rate on a physical layer, comprising: (1) channel encoding an inputbitstream; and (2) repeating bits of the channel encoded bitstream inaccordance with first and second repetition factors, the firstrepetition factor being different than the second repetition factor, tomatch a length of a repeated bitstream to an interleaving depth.
 2. Themethod of claim 1, wherein the repetition factor is one of a first and asecond value, the first value M₁ being a greatest integer not greaterthan a value obtainable by dividing the interleaving depth by the lengthof the channel encoded bitstream, and the second value M₂ being the sumof M₁ plus ‘1’.
 3. The method of claim 2, wherein when the channelencoded bitstream has indices from ‘0’ to ‘L−1’ and the number of bitsin the bitstream to be repeated according to a repetition factor is K₁,K₁ and respective remainders are compared, for fixing the first andsecond repetition factors of bits with relevant indices, the remaindersbeing obtainable by dividing the indices each increased by K₁ incrementfrom an index of an offset bit the bit repetition is started therefromby ‘L’.
 4. The method of claim 3, wherein if the remainder is smallerthan K₁, the bit with a relevant index is repeated according to M₂, andif the remainder is greater than K₁, the bit with a relevant index isrepeated according to M₁.
 5. The method of claim 2, wherein the numberof bits of the channel encoded bitstream repeated according to M₂ is aremainder obtainable by dividing the interleaving depth by the length ofthe channel encoded bitstream.
 6. The method of claim 2, wherein thenumber of bits of the channel encoded bitstream repeated according to M₁is a value obtainable by subtracting the number of bits repeatedaccording to M₂ from the length of the channel encoded bitstream.
 7. Aflexible data rate matching method in a 3GPP2 communication system formapping an input bitstream of one data rate on a physical layer,comprising: (1) performing channel encoding on an input bitstream; (2)fixing an index of an offset bit from which bit repetition of thechannel encoded bitstream is started to make a repetition pattern of thechannel encoded bitstream to be a desired bit repetition pattern; (3)fixing a repetition factor according to an initial parameter defined bythe index of a fixed offset bit, repeating a bit of relevant index, andupdating an initial parameter according to the fixed repetition factor;and (4) repeating a bit of relevant index and updating an initialparameter according to the fixed repetition factor.
 8. The method ofclaim 7, wherein when the input bitstream has indices from ‘0’ to ‘I−1’,the channel encoded bitstream has indices from ‘0’ to ‘L−1’, the indicesof the repeated bitstream have ‘k’ increased from ‘0’ to ‘N−1’, and aninitial parameter ‘b’ is defined according to the index of the offsetbit, and wherein bit repetition is started from the index, a value of a‘kth’ bit is predicted from a bit value of the input bitstream having agreatest integer not greater than a value obtainable by dividing anindex (k*L+b) of the input bitstream by ‘N’ as an index.
 9. The methodof claim 8, wherein ‘b’ is a remainder obtainable by dividing a value by‘L’, the value being a sum of ‘L’ and ‘K’, subtracted by another valueof (the offset bit index+1).
 10. The method of claim 8, wherein ‘b’ issubstituted with the offset bit index.
 11. The method of claim 8,wherein a value of the index is assumed to be a value of a bit with anidentical index in the repeated bitstream, and ‘b’ is increased by ‘L’if an index of the input bitstream is smaller than both ‘L’ and ‘N’. 12.The method of claim 8, wherein a value of the index is assumed to be oneincreased in increments of ‘1’ from the repeated bitstream, and ‘b’ isdecreased by ‘N’ if an index of the input bitstream is smaller than ‘L’and equal to, or greater than ‘N’.
 13. The method of claim 7, whereinthe repetition factor is one of a first and second repetition factor,wherein the first repetition factor is a greatest integer not greaterthan the interleaving depth divided by the length of the channel encodedbitstream, and wherein the second repetition factor is the firstrepetition factor plus ‘1’.
 14. The method of claim 13, wherein thenumber of bits repeated according to the second repetition factor in thechannel encoded bitstream is a remainder K₁ of the interleaving depthdivided by the length of the channel encoded bitstream, and the numberof bits repeated according to the first repetition factor in the channelencoded bitstream is K₂, the length of the channel encoded bitstreamsubtracted by K₁.
 15. The method of claim 14, wherein when a sum of aremainder and K₁ is equal to, or greater than ‘L’, the remainder is anindex of the offset bit plus K₂ divided by ‘L’, a repetition factor ofthe bit with the index is the second repetition factor, and the initialparameter is decreased by K₁.
 16. The method of claim 14, wherein when asum of a remainder and K₁ is smaller than ‘L’, the remainder is an indexplus K₂ divided by ‘L’, a repetition factor of the bit with the index isthe first repetition factor, and the initial parameter is increased byK₁.
 17. The method of claim 14, wherein when an initial parameterincreased by K₁ is equal to or greater than ‘L’, the initial parameteris an index plus K₂ divided by ‘L’, a repetition factor of the bit withthe index is the second repetition factor, and the increased initialparameter is decreased by ‘L’.
 18. The method of claim 14, wherein whenan initial parameter increased by K₁ is smaller than ‘L’, the initialparameter being an index plus K₂ divided by ‘L’, a repetition factor ofthe bit with the index is the first repetition factor.
 19. The method ofclaim 14, wherein when the initial parameter is smaller than K₁, theinitial parameter is a remainder of a value divided by ‘L’, the valuebeing ‘L’ subtracted by a remainder of an index divided by ‘L’ addedwith (K₁−1), the repetition factor of a bit with the index is the secondrepetition factor, and the initial parameter is increased by ‘K₂’. 20.The method of claim 14, wherein when the initial parameter is equal toor greater than K₁, the initial parameter is a remainder of a valuedivided by ‘L’, the value being ‘L’ subtracted by a remainder of anindex divided by ‘L’ added with (K₁−1), the repetition factor of a bitwith the index is the first repetition factor, and the initial parameteris decreased by ‘K₁’.
 21. A flexible data rate matching method in a3GPP2 system in an interleaving process for mapping an input bitstreamof one data rate on a physical layer, comprising: (1) subjecting theinput bitstream to channel encoding; (2) fixing an index of an offsetbit from which bit repetition of the channel encoded bitstream isstarted, to make a repetition pattern of the channel encoded bitstreamto be a desired bit repetition pattern; (3) comparing a remainder of anindex increased by a prescribed number of bits from the index of thefixed offset bit divided by a length of the channel encoded bitstream tothe number of bits, for fixing a repetition factor; and (4) repeatingbits according to the fixed repetition factor, to match a length of therepeated bitstream to an interleaving depth.
 22. The method of claim 21,wherein the prescribed number of bits is a remainder of the interleavingdepth divided by the length of the channel encoded bitstream.
 23. Themethod of claim 21, wherein the repetition factor is one of a first andsecond repetition factor, wherein the first repetition factor is agreatest integer not greater than the interleaving depth divided by thelength of the channel encoded bitstream, and wherein the secondrepetition factor is the first repetition factor plus ‘1’.
 24. A methodof matching a data rate in a communication system, comprising: receivinga coded bitstream from an encoder, the coded bitstream having one of avariable rate and a flexible rate; determining first and secondrepetition factors, the second repetition factor being a sum of thefirst repetition factor plus ‘1’; and repeating a first number of bitsof the coded bitstream by the first repetition factor and repeating asecond number of bits of the bitstream by the second repetition factorto mach the data rate to an interleaver, the sum of the first and secondnumber of bits being a total length of the coded bitstream.
 25. Themethod of claim 24, wherein the data rate is matched without carryingout a puncturing operation.
 26. The method of claim 24, wherein thefirst repetition factor is a lower bound of a quotient of a size of therepeated bitstream divided by the length of the coded bitstream.
 27. Themethod of claim 24, wherein the number of bits to be repeated by thesecond repetition factor is a modulus of a size of the repeatedbitstream modulo the length of the coded bitstream.
 28. The method ofclaim 27, wherein the number of bits to be repeated by the firstrepetition factor is a difference of the size of the repeated bit streamminus the number of bits to be repeated by the second repetition factor.29. The method of claim 24, wherein an output bit of the repeated bitstream is a lower bound of, a quotient of, a product of an input bitmultiplied by the length of the coded bit stream, divided by a length ofthe repeated bit stream, wherein the length of the repeated bit streamis less than or equal to the length of the encoded bit stream, andwherein the length of the repeated bit stream is a size of theinterleaver.
 30. The method of claim 29, wherein a constant value isadded to the product of the input bit multiplied by the length of thecoded bit stream, before being divided by the length of the repeated bitstream.
 31. The method of claim 30, wherein the constant value is amodulus resultant of, a sum of the number of bits to be repeated by thesecond repetition factor plus the length of the encoded bit stream minus‘1’ minus an initial offset value, modulo the length of the encoded bitstream.
 32. The method of claim 31, wherein the initial offset is ‘0’.33. A method of matching a data rate in a communication system,comprising: receiving a coded bitstream from an encoder, the codedbitstream having one of a variable rate and a flexible rate; determiningfirst and second puncturing factors, the second puncturing factor beinga sum of the first puncturing factor plus ‘1’; and puncturing a firstnumber of bits of the coded bitstream by the first puncturing factor andpuncturing a second number of bits of the bitstream by the secondpuncturing factor to mach the data rate to an interleaver, the sum ofthe first and second number of bits being a total length of the codedbitstream.
 34. The method of claim 33, wherein the data rate is matchedwithout carrying out a repeating operation.
 35. The method of claim 33,wherein the first puncturing factor is a lower bound of a quotient of asize of the punctured bitstream divided by the length of the codedbitstream.
 36. The method of claim 33, wherein the number of bits to bepunctured by the second puncturing factor is a result of the a length ofthe punctured bitstream modulo the length of the coded bitstream. 37.The method of claim 36, wherein the number of bits to be punctured bythe first puncturing factor is a difference of the size of the puncturedbit stream minus the number of bits to be punctured by the secondpuncturing factor.
 38. The method of claim 33, wherein an output bit ofthe punctured bit stream is a lower bound of, a quotient of, a productof an input bit multiplied by the length of the coded bit stream,divided by a length of the punctured bit stream, wherein the length ofthe punctured bit stream is greater than or equal to the length of theencoded bit stream, and wherein the length of the punctured bit streamis a size of the interleaver.
 39. The method of claim 38, wherein aconstant value is added to the product of the input bit multiplied bythe length of the coded bit stream, before being divided by the lengthof the punctured bit stream.
 40. The method of claim 39, wherein theconstant value is a modulus resultant of, a sum of the number of bits tobe punctured by the second puncture factor plus the length of theencoded bit stream minus ‘1’ minus an initial offset value, modulo thelength of the encoded bit stream.
 41. The method of claim 40, whereinthe initial offset is ‘0’.
 42. A communication device, comprising: meansfor receiving a coded bitstream from an encoder, the coded bitstreamhaving one of a variable rate and a flexible rate; means for determiningfirst and second repetition factors, the second repetition factor beinga sum of the first repetition factor plus ‘1’; and means for repeating afirst number of bits of the coded bitstream by the first repetitionfactor and repeating a second number of bits of the bitstream by thesecond repetition factor to mach the data rate to an interleaver, thesum of the first and second number of bits being a total length of thecoded bitstream.
 43. The method of claim 42, further comprising meansfor matching the data rate without carrying out a puncturing operation.44. The method of claim 42, wherein the first repetition factor is alower bound of a quotient of a size of the repeated bitstream divided bythe length of the coded bitstream.
 45. The method of claim 42, whereinthe number of bits to be repeated by the second repetition factor is amodulus of the a size of the repeated bitstream modulo the length of thecoded bitstream.
 46. The method of claim 45, wherein the number of bitsto be repeated by the first repetition factor is a difference of thesize of the repeated bit stream minus the number of bits to be repeatedby the second repetition factor.
 47. The method of claim 42, wherein anoutput bit of the repeated bit stream is a lower bound of, a quotientof, a product of an input bit multiplied by the length of the coded bitstream, divided by a length of the repeated bit stream, wherein thelength of the repeated bit stream is less than or equal to the length ofthe encoded bit stream, and wherein the length of the repeated bitstream is a size of the interleaver.
 48. The method of claim 47, whereina constant value is added to the product of the input bit multiplied bythe length of the coded bit stream, before being divided by the lengthof the repeated bit stream.
 49. The method of claim 48, wherein theconstant value is a modulus resultant of, a sum of the number of bits tobe repeated by the second repetition factor plus the length of theencoded bit stream minus ‘1’ minus an initial offset value, modulo thelength of the encoded bit stream.
 50. The method of claim 49, whereinthe initial offset is ‘0’.